iT邦幫忙

2024 iThome 鐵人賽

DAY 6
1

在今天的文章中,我將介紹持續交付 (CD) 的核心原則、佈署策略及驗證。
持續交付(Continuous Delivery, CD)是 DevOps 中的重要一環,它的目標是讓應用程式能夠隨時佈署到生產環境(正式環境)。通過自動化構建、測試和佈署流程,能夠大幅度減少軟體交付的風險和時間成本,並提高團隊的敏捷性!
https://ithelp.ithome.com.tw/upload/images/20240920/20169492TOZrYFD7jZ.jpg
圖片來源


持續交付 (CD) 是什麼?

核心原則

  1. 自動化佈署流程

    持續交付的第一步是確保佈署流程完全自動化。這意味著每個應用程式更新都可以通過單一指令或事件觸發,自動完成構建、測試及佈署,無需手動干預。

  2. 持續測試與驗證

    在每次程式碼變更後,自動化測試應該自動運行,並在佈署之前確保應用程式的穩定性與正確性。持續測試包括單元測試、集成測試以及端到端測試,這些測試過程可確保應用程式在更新後能夠正確運行。

  3. 隨時可佈署的狀態

    一個持續交付的系統,應用程式無論何時都應該處於「可佈署」狀態。這樣不僅能讓團隊快速響應市場需求,還能確保當需要修補漏洞或解決生產問題時能立即發布更新(Release)。

  4. 小而頻繁的變更

    持續交付強調頻繁的小變更,而不是大規模的更新。這樣能夠降低每次變更的風險,並更容易發現與修復問題。

  5. 版本控制與環境一致性

    使用版本控制來管理程式碼和配置文件,並確保開發、測試和生產環境的配置一致性,這樣能夠減少在不同環境之間移動程式碼時發生的錯誤。

佈署策略

在 CD Pipeline 中,你可以根據需求配置不同的佈署策略,例如:

  • 滾動佈署 (Rolling Deployment): 將應用程式逐步佈署到不同的實例上,避免停機時間。
  • 藍綠佈署 (Blue-Green Deployment): 同時維護兩個版本的應用程式(藍與綠),測試新版本的應用程式後再將流量切換到新版本。
  • 金絲雀佈署 (Canary Deployment): 只將新版本的部分流量導向小比例用戶,用來測試新版本的穩定性。

佈署驗證

持續交付還應包括佈署驗證的步驟,例如:

  • 健康檢查: 確保應用程式在佈署後能正常運行。
  • 自動回滾: 如果新版本在生產環境中出現重大問題,可以自動回滾(Roll back)到上一個穩定版本。

持續交付 (CD) 的好處

  1. 縮短交付週期

    持續交付使得應用程式能更快、更頻繁地推送至生產環境,減少了產品上市時間。

  2. 減少風險

    因為持續交付強調小而頻繁的變更,這樣更容易檢測問題並快速修復,降低了每次佈署的風險。

  3. 提高團隊效率

    團隊不再需要手動進行測試與佈署,這減少了人力成本並提升了整體效率。

  4. 增強市場競爭力

    持續交付讓團隊能夠快速迭代產品,應對市場變化和用戶需求,增強了競爭力。


結語

持續交付(CD) 是 DevOps 的核心實踐之一,通過自動化構建、測試和佈署流程,開發團隊能夠更高效地將應用程式交付給使用者。無論是縮短交付週期、提高交付質量,還是降低風險,CD 都為企業帶來了巨大的競爭優勢。在 Azure DevOps 的支持下,我們可以簡單地實現持續交付,並利用容器化技術、Kubernetes 及 GitOps 等工具,進一步提升應用程式的可擴展性和可靠性!💪

明天的文章將聚焦於 YAML 文件的深入探討,並展示如何使用 YAML 文件來定義 CI/CD 工作流程。


上一篇
Day05 - 使用 Azure DevOps Pipelines 持續集成 (CI)
下一篇
Day07 - 使用 YAML 定義 Pipeline: 條件邏輯與變數的應用
系列文
DevOps菜鳥的30天實踐挑戰:從 CI/CD Pipeline 到雲端佈署12
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言